home *** CD-ROM | disk | FTP | other *** search
/ Assassins - Ultimate CD Games Collection 2 / Assassins 2 - Ultimate Games No. 2 (1995)(Weird Science)[!][Amiga-CD32-CDTV].iso / arcade / tronics_2091 / tronics.amos / tronics.amosSourceCode < prev   
AMOS Source Code  |  1995-01-01  |  4KB  |  153 lines

  1. '+ TRONICS 2091 By D.McLaughlin  (c) 1991   Rude SoftWare  +     
  2. On Error Proc HELP
  3. Resume Label OK
  4. OK:
  5. BEGIN
  6. Do 
  7.    LEVEL
  8.    Volume 63 : Sam Play 2,,7000
  9.    Wait 109 : Bob Off 2 : Bob Off 3
  10.    Volume 10 : Sam Loop On : Sam Play 1
  11.    Wait Vbl 
  12.    Repeat 
  13.       APLOT
  14.       BPLOT
  15.       SCORE
  16.       Inc HNG : If HNG=HG Then HANGER
  17.       Wait SPEED
  18.    Until W<>0
  19.    Sam Loop Off : Volume 63 : Sam Play 2 : Wait 6 : Boom 
  20.    If W=1 Then Bob 1,X2,Y2,1 : Add PL1,200
  21.    If W=2 Then Bob 1,X1,Y1,1 : Add PL2,200
  22.    Anim 1,"(1,4)(2,4)(4,4)(3,4)(4,4)(5,4)(12,4)"
  23.    Anim On : Wait 28 : Bob Off 1
  24.    SCORE
  25.    If LEV<>10 Then Wait 60 : Fade 6 : Wait 50
  26. Loop 
  27. '+++++++++++++++++++++++ 
  28. Procedure BEGIN
  29.    Screen Open 0,320,256,2,Lowres : Cls 0
  30.    Screen Open 1,320,256,32,Lowres
  31.    Shared PL1,PL2,LEV,SPEED,HG
  32.    Flash Off : Cls 0 : Hide : Make Mask 
  33.    PL1=0 : LEV=0 : PL2=0 : SPEED=1
  34.    Channel 1 To Bob 1 : Channel 2 To Bob 4
  35.    Get Sprite Palette 
  36.    Paste Bob 120,70,33
  37.  Do 
  38.    K$=Inkey$ : UK$=Upper$(K$)
  39.    If UK$="F" Then Bell 15 : SPEED=1 : HG=150 : Exit 
  40.    If UK$="S" Then Bell 10 : SPEED=2 : HG=75 : Exit 
  41.  Loop 
  42. End Proc
  43. Procedure APLOT
  44.    Shared X1,Y1,DX,DY,PL1,W,HIT1
  45.    If DX=1 Then Inc X1
  46.    If DX=-1 Then Dec X1
  47.    If DY=1 Then Inc Y1
  48.    If DY=-1 Then Dec Y1
  49.    HIT1=Point(X1,Y1) : If HIT1>27 Then W=2 : Pop Proc
  50.    Ink 30
  51.    Plot X1,Y1 : Inc PL1
  52.    J=Joy(1) : If J=0 Then Pop Proc
  53.    If J=1 Then DY=-1 : DX=0 : Pop Proc
  54.    If J=2 Then DY=1 : DX=0 : Pop Proc
  55.    If J=4 Then DX=-1 : DY=0 : Pop Proc
  56.    If J=8 Then DX=1 : DY=0 : Pop Proc
  57.    If J=9 Then DX=1 : DY=-1 : Pop Proc
  58.    If J=10 Then DX=1 : DY=1 : Pop Proc
  59.    If J=6 Then DX=-1 : DY=1 : Pop Proc
  60.    If J=5 Then DX=-1 : DY=-1
  61. End Proc
  62. Procedure BPLOT
  63.    Shared X2,Y2,DX2,DY2,PL2,W
  64.    If DX2=1 Then Inc X2
  65.    If DX2=-1 Then Dec X2
  66.    If DY2=1 Then Inc Y2
  67.    If DY2=-1 Then Dec Y2
  68.    HIT2=Point(X2,Y2) : If HIT2>27 Then W=1 : Pop Proc
  69.    Ink 31
  70.    Plot X2,Y2 : Inc PL2
  71.    J=Joy(0) : If J=0 Then Pop Proc
  72.    If J=1 Then DY2=-1 : DX2=0 : Pop Proc
  73.    If J=2 Then DY2=1 : DX2=0 : Pop Proc
  74.    If J=4 Then DX2=-1 : DY2=0 : Pop Proc
  75.    If J=8 Then DX2=1 : DY2=0 : Pop Proc
  76.    If J=9 Then DX2=1 : DY2=-1 : Pop Proc
  77.    If J=10 Then DX2=1 : DY2=1 : Pop Proc
  78.    If J=6 Then DX2=-1 : DY2=1 : Pop Proc
  79.    If J=5 Then DX2=-1 : DY2=-1
  80. End Proc
  81. Procedure SCORE
  82.    Shared PL1,PL2
  83. Pen 20
  84.    Locate 9,0 : Print PL1
  85.    Locate 22,0 : Print Using "########";PL2
  86. End Proc
  87. Procedure LEVEL
  88.    Shared LEV,X1,Y1,X2,Y2,DX,DY,W,HIT1,HIT2,DX2,DY2,HNG,PL1,PL2,D,HG
  89.    Inc LEV
  90.    If LEV=1 Then Unpack 2 To 1 : Screen Hide 1 : D=1 : Goto RESET
  91.    If LEV=2 Then Unpack 4 To 1 : Screen Hide 1 : D=2 : Goto RESET
  92.    If LEV=3 Then Unpack 6 To 1 : Screen Hide 1 : D=3 : Goto RESET
  93.    If LEV=4 Then Unpack 7 To 1 : Screen Hide 1 : D=4 : Goto RESET
  94.    If LEV=5 Then Unpack 8 To 1 : Screen Hide 1 : D=3 : Goto RESET
  95.    If LEV=6 Then Unpack 9 To 1 : Screen Hide 1 : D=2 : Goto RESET
  96.    If LEV=7 Then Unpack 10 To 1 : Screen Hide 1 : D=1 : Goto RESET
  97.    If LEV=8 Then Unpack 11 To 1 : Screen Hide 1 : D=3 : Goto RESET
  98.    If LEV=9 Then Unpack 12 To 1 : Screen Hide 1 : D=2 : Goto RESET
  99.    If LEV=10 Then Unpack 13 To 1 : Screen Hide 1 : D=4 : Goto RESET
  100.    If LEV=11
  101.    Wait 100
  102.      If PL1>PL2
  103.        Run "REDOVER.AMOS"
  104.      Else 
  105.       Run "GREENOVER.AMOS"
  106.     End If 
  107.    End If 
  108. RESET:
  109.    Bob 2,100,125,6 : Bob 3,147,125,7
  110. If D=1
  111.    X1=80 : Y1=132 : DX=1 : DY=0
  112.    X2=80 : Y2=138 : DX2=1 : DY2=0
  113.    Bob 4,79,135,8
  114. End If 
  115. If D=2
  116.    X1=234 : Y1=138 : DX=-1 : DY=0
  117.    X2=234 : Y2=132 : DX2=-1 : DY2=0
  118.    Bob 4,236,135,10
  119. End If 
  120. If D=3
  121.    X1=163 : Y1=74 : DX=0 : DY=1
  122.    X2=157 : Y2=74 : DX2=0 : DY2=1
  123.    Bob 4,160,73,9
  124. End If 
  125. If D=4
  126.    X1=156 : Y1=181 : DX=0 : DY=-1
  127.    X2=162 : Y2=181 : DX2=0 : DY2=-1
  128.    Bob 4,159,182,11
  129. End If 
  130.    Curs Off : Paper 0 : Ink 0 : Bar 0,0 To 7,7
  131.    HIT1=0 : HIT2=0 : W=0 : HNG=0
  132.    SCORE
  133.    Screen Show 1 : Wait 35
  134. End Proc
  135. Procedure HANGER
  136. Shared D,HNG$
  137.  If D=1 Then HNG$="(13,3)(14,3)(15,3)(16,3)(17,3)(12,3)"
  138.  If D=2 Then HNG$="(23,3)(24,3)(25,3)(26,3)(27,3)(12,3)"
  139.  If D=3 Then HNG$="(18,3)(19,3)(20,3)(21,3)(22,3)(12,3)"
  140.  If D=4 Then HNG$="(28,3)(29,3)(30,3)(31,3)(32,3)(12,3)"
  141.    Anim 2,HNG$
  142.    Anim On 2
  143. End Proc
  144. Procedure HELP
  145.  Bob Off : Wait Vbl : Sam Loop Off : Cls 0
  146.  Ink 2 : Paper 0
  147.  Locate ,12 : Centre "OOOPS! A BUG I DIDN'T FIND !"
  148.  Locate ,16 : Centre "OH WELL, HAVE TO DO A RESTART !"
  149.  Locate ,20 : Centre "WELL, HIT A KEY THEN !"
  150. Curs Off 
  151. Clear Key : Wait Key 
  152. Resume Label 
  153. End Proc